﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Brjnk.Maps.Downloader
{
    /// <summary>
    /// Musí být thread safe!
    /// </summary>
    public interface IOverloadProtection
    {
      void Initialize(DownloadThread[] threads);

        /// <summary>
        /// Vrátí čas, za který bude možné stáhnout další soubor
        /// </summary>
        TimeSpan GetRemainingTime(DownloadThread thread);
        
        /// <summary>
        /// Metoda je volána po dokončení stahování
        /// </summary>
        void Increment(DownloadThread thread, ulong size);

  
    }
}
